/**
 * 
 */
package org.jenkon.commons.lang.decorator;

import java.io.Serializable;

import org.jenkon.commons.lang.validator.Validator;

/**
 * @author Jens Konopka
 * 
 */
public abstract class ValidatorDecorator<T> implements Validator<T>,
		Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 5294148522150213560L;

	private Validator<T> validator;

	/**
	 * @param validator
	 *            {@link Validator}
	 */
	public ValidatorDecorator(final Validator<T> validator) {
		this.validator = validator;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see org.jenkon.validation.Validator#validate(java.lang.Object)
	 */
	public boolean validate(final T value) throws Exception {
		return validator.validate(value);
	}

}
